#include "SList.h"

void TestSList() {
	SListNode* p = NULL;

	SListPushBack(&p, 1);
	SListPushBack(&p, 2);
	SListPushBack(&p, 3);
	SListPrint(p);

	SListPushFront(&p, 4);
	SListPushFront(&p, 5);
	SListPushFront(&p, 6);
	SListPrint(p);

	SListPopBack(&p);
	SListPopBack(&p);
	SListPrint(p);

	SListPopFront(&p);
	SListPopFront(&p);
	SListPrint(p);

	SListNode* pos1 = SListFind(p, 4);

	SListInsertAfter(pos1, 7);
	SListPrint(p);

	SListEraseAfter(pos1);
	SListPrint(p);

	pos1 = SListFind(p, 1);
	SListTInsert(&p, pos1, 8);
	SListPrint(p);

	SListTErase(&p, pos1);
	SListPrint(p);

	SListTDestroy(&p);
}

int main() {
	TestSList();
	return 0;
}